Consumers are using mobile devices more frequently for streaming media such as audio or video or fetching other useful data such as maps, etc. while in motion. One common limitation, though, when using mobile devices in this manner is that wireless “dead zones” (zones where there is not sufficient wireless signal strength or bandwidth) cause an interruption in streaming-type services. In addition, driving from areas with less network congestion (for example, the suburbs) to areas of greater network congestion (e.g. urban centers) may also cause an interruption in streaming content due to the over-congested networks. Other examples of reception limitations involve situations where interference with other cell sites occurs or where the radio signal is interrupted or attenuated by local topography. Since cell phones rely on radio waves, and radio waves travel through the air and are easily attenuated, other factors may cause cell phones to be unreliable at times. Areas that exhibit such limitations may commonly be referred to as problem zones that represent areas of unfavorable network conditions.
Streaming applications require uninterrupted playback that is isolated from the vagaries of network jitter, interference or signal loss/attenuation. Thus, the above-mentioned problem zones can cause an interruption in streaming data. Many application programmers or mobile device manufacturers try to compensate for problem zones by “buffering” content delivery or downloading data in advance. This is commonly achieved using a playback buffer. However, buffering, as currently implemented in most streaming service applications, is only intended to cover brief interruptions or interference of service (usually 30-60 seconds), such as when a mobile device is “handed off” from one tower to another, when going through a short tunnel, when available bandwidth is momentarily reduced due to network congestion, or under similar brief conditions. Once the mobile device leaves a problem zone, a buffer manager replenishes the buffer to a minimum level by varying the rate of transmission from the server as necessary. Nevertheless, this type of buffering is unsuitable when driving through areas with very large problem zones where the mobile device may be located for extended periods of time.
Another scenario for additional buffering may be where a network carrier wishes to minimize the use of a roaming partner's network to avoid paying data roaming costs. For example, if network operator A and network operator B have reciprocal roaming agreements, it still may be financially advantageous for network operator A to have their customers pre-fetch a large quantity of data from streaming services before roaming onto network operator B's network so that network operator A does not have to pay roaming data charges to network operator B.
Accordingly, there is a need for a system that uses specific knowledge about network conditions to prompt actions for mobile devices prior to encountering problem zones.